13-1

若要能建立大型應用程式,程式碼就要模組化(Modularized)以便提高其重複使用度(Reusability)。因此在撰寫 ASP 的程式碼時,我們就應該注意程式碼的重複性,並設法將重複出現的部分寫成函數(或稱函式),以便重複使用。

以 JScript 為例,下述程式碼的功能是算出由 1 加到 n 的總和:

<%
function sum(n) {
	var i, total;
	total = 0;
	for (i=1; i<=n; i++)
		total = total + i
	return(total);
}
%>
在下列範例中,我們就是以上述函數來計算由 1 至 20 的總和:

Example(sum01.asp):

上述範例的原始檔如下:

原始檔(sum01.asp):(灰色區域按兩下即可拷貝)
<%@language=jscript%>
<%title="使用 JScript 函數範例"%>
<!--#include file="head.inc"-->
<hr>

<%
function sum(n) {
	var i, total=0;
	for (i=1; i<=n; i++)
		total = total + i;
	return(total);
}

n = 20;
Response.write("1+2+...+" + n + " = " + sum(n) + "\n");
Response.write("(Computed by server-side JScript)");
%>

<hr>
<!--#include file="foot.inc"-->

相同功能的函數,若用 VBScript 來撰寫,程式碼如下:

<%
function sum(n)
	dim i, total
	total = 0
	for i = 1 to n
		total = total + i
	next
	sum = total
end function
%>
此 VBScript 函數的呼叫方式可見下列範例:

Example(sum01_vbs.asp):

上述範例的原始檔如下:

原始檔(sum01_vbs.asp):(灰色區域按兩下即可拷貝)
<%title="使用 VBScript 函數範例"%>
<!--#include file="head.inc"-->
<hr>

<%
function sum(n)
	dim i, total
	total = 0
	for i = 1 to n
		total = total + i
	next
	sum = total
end function

n = 20
response.write("1+2+...+" & n & " = " & sum(n) & chr(13) & chr(10))
response.write("(Computed by server-side VBScript)")
%>

<hr>
<!!--#include file="foot.inc"-->

在使用函數時,JScript 和 VBScript 也有一些不同之處,整理如下:


JScript 程式設計與應用:用於伺服器端的 ASP 環境